Many network assurance systems rely on predefined rules to determine the health of the network. In turn, these rules can be used to trigger corrective measures and/or notify a network administrator as to the health of the network. For instance, in an assurance system for a wireless network, one rule may comprise a defined threshold for what is considered as an acceptable number of clients per access point (AP) or the channel interference, itself. More complex rules may also be created to capture conditions over time, such as a number of events in a given time window or rates of variation of metrics (e.g., the client count, channel utilization, etc.).
As networks continue to evolve, the number of behaviors that a network assurance system must assess is also rapidly increasing. For example, as the quantity and variety of wireless clients increases in a network, this introduces new behaviors into the network, such as different traffic loads experienced by the deployed APs, potentially new considerations from a quality of service (QoS) standpoint, etc. Thus, the number of network assurance rules to be maintained is also rapidly increasing and will soon become too unwieldy for many entities.
Machine learning presents a promising alternative to using static rules for purposes of network assurance. However, no single machine learning-based approach is able to assess all use cases, in accordance with the “No Free Lunch” Theorem. In addition, the quality of the input data to a machine learning-based behavioral model can easily affect the operation of the model and lead to incorrect results, in some cases.